package dichotomy.isprefectnum;
/**
 * @Date 2020/1/23
 * @author 王光浩
 * @Need 给出一个整数，判断该数是否是一个完全平方数，如果是则返回true，否则返回false。
 * @Thinking 使用数学公式，等差和公式。n^2=1+3+5+7+...+(2*n-1)
 *           复杂度分析：时间复杂度O（n），空间复杂度O（1）
 */
public class OtherMethodOne {
	public boolean isPerfectSquare(int num) {
		long total=1l;
		while(num>0) {
			num-=total;
			total+=2;
		}
		return num==0;
	}

}
